﻿Imports System.ServiceModel

<MessageContract()> _
Public Class TransFileInfo

    Private m_Guid As String = String.Empty
    ''' <summary>
    ''' GUID 唯一的标识符
    ''' </summary>
    ''' <value></value>
    ''' <returns></returns>
    ''' <remarks></remarks>
    <MessageHeader(MustUnderstand:=True)> _
    Public Property Guid() As String
        Get
            Return m_Guid
        End Get
        Set(ByVal value As String)
            m_Guid = value
        End Set
    End Property


    Private m_SavePath As String = String.Empty
    ''' <summary>
    ''' 传输的保存完整路径
    ''' </summary>
    ''' <value></value>
    ''' <returns></returns>
    ''' <remarks></remarks>
    <MessageHeader(MustUnderstand:=True)> _
    Public Property SavePath() As String
        Get
            Return m_SavePath
        End Get
        Set(ByVal value As String)
            m_SavePath = value
        End Set
    End Property

    Private m_FilePath As String = String.Empty
    ''' <summary>
    ''' 待传输的文件完整路径
    ''' </summary>
    ''' <value></value>
    ''' <returns></returns>
    ''' <remarks></remarks>
    <MessageHeader(MustUnderstand:=True)> _
    Public Property FilePath() As String
        Get
            Return m_FilePath
        End Get
        Set(ByVal value As String)
            m_FilePath = value
        End Set
    End Property


    Private m_Position As Long = 0L
    ''' <summary>
    ''' 文件读取位置
    ''' </summary>
    ''' <value></value>
    ''' <returns></returns>
    ''' <remarks></remarks>
    <MessageHeader(MustUnderstand:=True)> _
    Public Property Position() As Long
        Get
            Return m_Position
        End Get
        Set(ByVal value As Long)
            m_Position = value
        End Set
    End Property

    Private m_FileLength As Long
    ''' <summary>
    ''' 文件的大小，以字节为单位
    ''' </summary>
    ''' <value></value>
    ''' <returns></returns>
    ''' <remarks></remarks>
    <MessageHeader(MustUnderstand:=True)> _
    Public Property FileLength() As Long
        Get
            Return m_FileLength
        End Get
        Set(ByVal value As Long)
            m_FileLength = value
        End Set
    End Property


    Private m_FileData() As Byte
    ''' <summary>
    ''' 文件字节数组
    ''' </summary>
    ''' <value></value>
    ''' <returns></returns>
    ''' <remarks></remarks>
    <MessageBodyMember(Order:=1)> _
    Public Property FileData() As Byte()
        Get
            Return m_FileData
        End Get
        Set(ByVal value() As Byte)
            m_FileData = value
        End Set
    End Property




End Class
